In the event of technical difficulties with Szkopuł, please contact us via email at [email protected].
If you would like to talk about tasks, solutions or technical problems, please visit our Discord servers. They are moderated by the community, but members of the support team are also active there.
Napisem nazywamy każdy skończony ciąg małych liter
alfabetu angielskiego.
W szczególności może to być ciąg pusty.
Zapis oznacza, że
jest napisem powstałym przez
sklejenie napisów
i
(w tej kolejności).
Napis
jest prefiksem napisu
, jeżeli istnieje
taki napis
, że
.
Inaczej mówiąc, prefiksy
to początkowe fragmenty
.
Jeśli dodatkowo
oraz
nie jest napisem pustym,
to mówimy, że
jest prefiksem właściwym
.
Napis jest okresem
, jeśli
jest prefiksem
właściwym
oraz
jest prefiksem (niekoniecznie właściwym)
napisu
.
Przykładowo, napisy abab i ababab są okresami
napisu abababa.
Maksymalnym okresem napisu
nazywamy najdłuższy z jego
okresów, lub napis pusty, jeśli
nie posiada okresu.
Dla przykładu, maksymalnym okresem napisu ababab jest
abab.
Maksymalnym okresem abc jest napis pusty.
Napisz program, który:
W pierwszym wierszu standardowego wejścia zapisana jest jedna
liczba całkowita (
) - długość napisu.
W kolejnym wierszu znajduje się ciąg dokładnie
małych liter alfabetu
angielskiego - napis.
W pierwszym i jedynym wierszu standardowego wyjścia Twój program powinien zapisać jedną liczbę - sumę długości maksymalnych okresów wszystkich prefiksów napisu zadanego na wejściu.
Dla danych wejściowych:
8 babababa
poprawną odpowiedzią jest:
24
Autor zadania: Szymon Acedański.